redd kafakafka ne demek?
Redd Kafka, dağıtık, yüksek verimli ve gerçek zamanlı veri akışı platformudur. Apache tarafından geliştirilen açık kaynaklı bir projedir.
Temel olarak üç ana görevi yerine getirir:
- Yayınlama (Publish): Uygulamaların veri akışlarını "topic" adı verilen kategorilere yayınlamasını sağlar.
- Abone Olma (Subscribe): Uygulamaların bu topic'lere abone olarak veri akışlarını tüketmesini sağlar.
- Depolama (Store): Veri akışlarını belirli bir süre boyunca saklar.
Kafka'nın temel özellikleri ve kullanım alanları:
- Yüksek Verim (High Throughput): Büyük miktarda veriyi düşük gecikmeyle işleyebilir. Bu özelliği sayesinde gerçek zamanlı veri analizi ve büyük veri uygulamaları için idealdir.
- Ölçeklenebilirlik (Scalability): Yatay olarak kolayca ölçeklenebilir, yani daha fazla kaynak eklenerek performansı artırılabilir.
- Hata Toleransı (Fault Tolerance): Dağıtık yapısı sayesinde, bir sunucunun arızalanması durumunda bile sistem çalışmaya devam eder. Veri kaybını önlemek için veriler birden fazla sunucuda (broker) replike edilir.
- Gerçek Zamanlı Veri İşleme (Real-time Data Processing): Anlık veri akışlarını işleyerek karar alma süreçlerini hızlandırır.
- Günlük Toplama (Log Aggregation): Uygulama loglarını merkezi bir yerde toplar ve analiz edilmesini kolaylaştırır.
- Olay Kaynaklı Mimari (Event-Driven Architecture): Mikroservisler arasındaki iletişimi sağlayarak daha esnek ve ölçeklenebilir uygulamalar oluşturulmasına olanak tanır.
Kafka'nın temel bileşenleri:
- Broker: Kafka sunucusudur. Veri depolama ve dağıtım işlemlerini gerçekleştirir.
- Topic: Verilerin kategorize edildiği mantıksal gruplardır.
- Partition: Topic'ler, partition'lara ayrılır. Her partition, verilerin sıralı bir şekilde tutulduğu log dosyasıdır.
- Producer: Veri üreten ve topic'lere yayınlayan uygulamalardır.
- Consumer: Topic'lere abone olan ve veriyi tüketen uygulamalardır.
- Zookeeper: Kafka cluster'ının yapılandırma bilgilerini yöneten ve koordinasyonunu sağlayan bir hizmettir.
İlgili kavramlar: